package com.bdqn;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;

/**
 * SL01 使用DOM解析XML读取内容
 *
 * @author LILIBO
 * @since 2021-11-27
 */
public class SL02 {

    public static void main(String[] args) {
        try {
            // 获得DOM解析器工厂
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            // 从DOM工厂获得DOM解析器
            DocumentBuilder builder = factory.newDocumentBuilder();
            // 解析XML文件，获得Document对象
            Document doc = builder.parse("CH02/src/新的收藏信息.xml");
            // 通过标签名称获得节点列表
            NodeList pubDateNodeList = doc.getElementsByTagName("pubDate");
            Node pubDateNode = pubDateNodeList.item(0);
            // 获取一个节点内部的第一个子节点内容
            System.out.println(pubDateNode.getFirstChild().getNodeValue());

        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
